/**
 * Copyright &copy; 2019-2022 <a href="https://gitee.com/rit/zx-pm">zx-pm</a> All rights reserved.
 */
package com.zx.pm.modules.zx.entity;

import java.util.Date;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.hibernate.validator.constraints.Length;

import com.zx.pm.common.persistence.DataEntity;

/**
 * 投标保证金Entity
 * @author forest
 * @version 2019-02-27
 */
public class BidBond extends DataEntity<BidBond> {
	
	private static final long serialVersionUID = 1L;
	private String lzdId;
	private Double paySum;		// 缴纳金额
	private Date payTime;		// 缴纳时间
	private String payMode;		// 缴纳形式
	private String payFile;		// 缴纳票据上传
	private String payRemarks;		// 缴纳备注
	private String returnableResult;		// 保证金退还
	private String returnableRemarks;		// 退还备注
	private Double returnableInterest;		// 退还利息金额
	private String returnableFile;		// 退还票据上传
	private Date returnableTime;		// 退换时间
	private String payResult; // 支付结果
	private Double returnableSum; // 退还金额
	private Lzd lzd; //项目流转单信息
	private TenderSection section;
	private String supplierId;
	private Date tenderSaleDate;
	private List<BidBond> bbList;
	
	public TenderSection getSection() {
		return section;
	}

	public void setSection(TenderSection section) {
		this.section = section;
	}

	public BidBond() {
		super();
	}

	public BidBond(String id){
		super(id);
	}

	public String getLzdId() {
		return lzdId;
	}

	public void setLzdId(String lzdId) {
		this.lzdId = lzdId;
	}

	public Double getPaySum() {
		return paySum;
	}

	public void setPaySum(Double paySum) {
		this.paySum = paySum;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getPayTime() {
		return payTime;
	}

	public void setPayTime(Date payTime) {
		this.payTime = payTime;
	}
	
	@Length(min=0, max=32, message="缴纳形式长度必须介于 0 和 32 之间")
	public String getPayMode() {
		return payMode;
	}

	public void setPayMode(String payMode) {
		this.payMode = payMode;
	}
	
	@Length(min=0, max=4000, message="缴纳票据上传长度必须介于 0 和 4000 之间")
	public String getPayFile() {
		return payFile;
	}

	public void setPayFile(String payFile) {
		this.payFile = payFile;
	}
	
	@Length(min=0, max=4000, message="缴纳备注长度必须介于 0 和 4000 之间")
	public String getPayRemarks() {
		return payRemarks;
	}

	public void setPayRemarks(String payRemarks) {
		this.payRemarks = payRemarks;
	}
	
	@Length(min=0, max=32, message="保证金退还长度必须介于 0 和 32 之间")
	public String getReturnableResult() {
		return returnableResult;
	}

	public void setReturnableResult(String returnableResult) {
		this.returnableResult = returnableResult;
	}
	
	@Length(min=0, max=4000, message="退还备注长度必须介于 0 和 4000 之间")
	public String getReturnableRemarks() {
		return returnableRemarks;
	}

	public void setReturnableRemarks(String returnableRemarks) {
		this.returnableRemarks = returnableRemarks;
	}
	
	public Double getReturnableInterest() {
		return returnableInterest;
	}

	public void setReturnableInterest(Double returnableInterest) {
		this.returnableInterest = returnableInterest;
	}
	
	@Length(min=0, max=4000, message="退还票据上传长度必须介于 0 和 4000 之间")
	public String getReturnableFile() {
		return returnableFile;
	}

	public void setReturnableFile(String returnableFile) {
		this.returnableFile = returnableFile;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	public Date getReturnableTime() {
		return returnableTime;
	}

	public void setReturnableTime(Date returnableTime) {
		this.returnableTime = returnableTime;
	}

	public Lzd getLzd() {
		return lzd;
	}

	public void setLzd(Lzd lzd) {
		this.lzd = lzd;
	}

	public String getPayResult() {
		return payResult;
	}

	public void setPayResult(String payResult) {
		this.payResult = payResult;
	}

	public Double getReturnableSum() {
		return returnableSum;
	}

	public void setReturnableSum(Double returnableSum) {
		this.returnableSum = returnableSum;
	}

	public String getSupplierId() {
		return supplierId;
	}

	public void setSupplierId(String supplierId) {
		this.supplierId = supplierId;
	}

	public Date getTenderSaleDate() {
		return tenderSaleDate;
	}

	public void setTenderSaleDate(Date tenderSaleDate) {
		this.tenderSaleDate = tenderSaleDate;
	}

	public List<BidBond> getBbList() {
		return bbList;
	}

	public void setBbList(List<BidBond> bbList) {
		this.bbList = bbList;
	}
	 
	
}